home *** CD-ROM | disk | FTP | other *** search
- #ifndef __TIMAGE_HPP_
- #define __TIMAGE_HPP_
-
- #include "image.hpp"
- #include "macs.hpp"
- #include "palette.hpp"
- #include "filter.hpp"
- #include "jmalloc.hpp"
-
- /* data is stored in the following format
-
- skip amount, data size, data // no scan line wraps allowed
-
- */
-
-
- class trans_image // transpernet image
- {
- unsigned char *data;
- short w,h;
-
- public :
- short height() { return h; }
- short width() { return w; }
- trans_image(image *im, char *name); // name has no meaning if MEM_CHECK is off
- void put_image(image *screen, int x, int y); // always transparent
-
- // if screen x & y offset already calculated save a mul
- // and no clipping, but fast use this
- void put_image_offseted(image *screen, uchar *s_off);
- void put_image_filled(image *screen, int x, int y,
- uchar fill_color);
- void put_fade(image *screen, int x, int y,
- int frame_on, int total_frames,
- color_filter *f, palette *pal);
- void put_fade_tint(image *screen, int x, int y,
- int frame_on, int total_frames,
- uchar *tint,
- color_filter *f, palette *pal);
- void put_color(image *screen, int x, int y, int color);
- unsigned char *clip_y(image *screen, int x1, int y1, int x2, int y2,
- int x, int &y, int &ysteps);
-
- void put_blend16(image *screen, image *blend, int x, int y,
- int blendx, int blendy, int blend_amount, color_filter *f, palette *pal);
- void put_double_remaped(image *screen, int x, int y, unsigned char *remap, unsigned char *remap2);
- void put_remaped(image *screen, int x, int y, unsigned char *remap);
- void put_predator(image *screen, int x, int y);
- void put_scan_line(image *screen, int x, int y, int line); // always transparent
- unsigned char *t_data() { return data; }
- void make_color(int c);
- int size();
- image *make_image();
- ~trans_image() { jfree(data); }
- } ;
-
-
- #endif
-
-
-
-
-
-